<?php

/**
 * TOP API: taobao.trade.close request
 *
 * @author auto create
 * @since  1.0, 2013-09-13 16:51:03
 */
class Taobao_Request_TradeCloseRequest {
	/**
	 * 交易关闭原因。可以选择的理由有：
	 * 1.未及时付款
	 * 2.买家联系不上
	 * 3.谢绝还价
	 * 4.商品瑕疵
	 * 5.协商不一致
	 * 6.买家不想买
	 * 7.与买家协商一致
	 **/
	private $closeReason;

	/**
	 * 主订单或子订单编号。
	 **/
	private $tid;

	private $apiParas = array();

	public function setCloseReason($closeReason) {
		$this->closeReason = $closeReason;
		$this->apiParas["close_reason"] = $closeReason;
	}

	public function getCloseReason() {
		return $this->closeReason;
	}

	public function setTid($tid) {
		$this->tid = $tid;
		$this->apiParas["tid"] = $tid;
	}

	public function getTid() {
		return $this->tid;
	}

	public function getApiMethodName() {
		return "taobao.trade.close";
	}

	public function getApiParas() {
		return $this->apiParas;
	}

	public function check() {

		Taobao_RequestCheckUtil::checkNotNull($this->closeReason, "closeReason");
		Taobao_RequestCheckUtil::checkNotNull($this->tid, "tid");
	}

	public function putOtherTextParam($key, $value) {
		$this->apiParas[$key] = $value;
		$this->$key = $value;
	}
}
